package cn.hss.loop;

/**存钱问题
 * 需求：有一个有钱的神经病，他往银行里存钱，
 * 第一天存1元,以后每天比前一天多存50%，完成下列计算任务：
 * 1) 他存到第几天，当天存的钱会超过10元
 * 2)  一个月（30天）后，他总共存了多少钱
 * @author 作者：HeShaoShuai
 * @Email 邮箱：2569819541@qq.com
 * @Date 日期：2023/4/25 16:44
 * @Package 包名：cn.hss.loop
 * @Project 项目名：JavaSE
 * @Version 1.0
 */
public class Save {
	public static void main(String[] args) {
		// firstProblem();
		//twoProblem();
		snailProblem();
	}

	/**井里有一只蜗牛，他白天往上爬3米，晚上掉2米，井深10米。
	 * 计算蜗牛需要多少天才能从井底爬出来
	 */
	public static void snailProblem(){
		int day=1;
		double sum=0;//爬过的距离
		while(true){
			//白天爬3米
			sum +=3;
			System.out.println("第"+day+"天，爬过的距离为"+sum+"米");
			if(sum>=10)break;
			//晚上掉2米
			sum -=2;
			day++;
		}
		System.out.println("蜗牛需要"+day+"天才能爬出来");
	}
	//2) 一个月（30天）后，他总共存了多少钱
	public static void twoProblem(){
		double sum=0.0;
		double money=1.0;
		for(int i=2;i<30;i++){
			sum += money;
			money *=1.5;
			System.out.println("第"+i+"天存入的钱为"+money+"元");
		}
		System.out.println("30天共存了"+sum+"元");
	}
	//1) 他存到第几天，当天存的钱会超过10元
	public static void firstProblem(){
		int day=1;
		for(double money=1.0;money<10;){
			//第二天存的钱数
			money *= 1.5;
			day++;
			//System.out.println("第"+day+"天，存了"+money);
		}
		System.out.println("第"+day+"天会超过10元");
	}
}
